The present invention generally relates to the field of fibre channel devices, and particularly to an apparatus, system and method for enabling access and transfer of data.
The access, transfer and storage of electronic data is one of the most important aspects of modern life. From business to personal use, electronic data is utilized to make lives easier, as information representing transactions, personal data, business, and the like is stored and transferred quickly and accurately. By communicatively linking systems, data may be transferred to provide this functionality.
To provide consistent and persistent access to data, a variety of paths to the data, as well as data saving schemes may be employed. However, these schemes may require high data bandwidth, may be resource intensive, and may be incompatible across a variety of architectures. Further, such methods may result in complications to future development of products, devices and systems.
Further, the scheme employed may vary greatly depending on the functionality of the connected system. For example, some systems, when presented with multiple paths to a storage device, or target, will view each path as representing a different target device, thereby causing great confusion and compatibility issues within the system. However, in other systems, a host, when presented with multiple paths, may determine how many target devices are actually represented and choose a path accordingly. Such a system when presented with but a single path and/or reconciled target, may have such optimization ability through the system hindered. Thus, a system and method is needed for providing an accurate numerical indication and path of target devices.
Accordingly, the present invention is directed to a system and method for dynamic multipathing. In a first aspect of the present invention, an apparatus includes a first port suitable for communicatively coupling the apparatus to a host system and a second port suitable for communicatively coupling the apparatus to a target, the target having at least two data transfer routes with the apparatus. A memory suitable for storing electronic data is also included, the memory including a program of instructions. A controller is communicatively coupled to the first port, the second port and the memory. The controller is suitable for performing the program of instructions which configures the controller to maintain a logical identifier, the logical identifier being utilized to present a single target having at least two routes to a host, in which, the host does not receive an indication of more than one route to the target.
In a second aspect of the present invention, an apparatus for providing an input/output interface between a host and a target includes a first port suitable for communicatively coupling the apparatus to a host system and a second port suitable for communicatively coupling the apparatus to a target, the target having at least two data transfer routes with the apparatus. A memory suitable for storing electronic data is also included, the memory including a program of instructions. A controller is communicatively coupled to the first port, the second port and the memory. The controller is suitable for performing the program of instructions, in which the program of instructions configures the controller to select a route from at least two routes communicatively coupling the apparatus to the target so that a host may access the target utilizing a logical identifier indicating the target and wherein the host does not receive an indication of more than one route to the target.
In a third aspect of the present invention, a method of providing data transfer between a host and a target in a network environment includes providing a logical identifier table by an input/output interface. The logical identifier table includes at least one logical identifier suitable for referencing a physical address identifier of a target. Communications between the host and the target are managed by selecting a route by the input/output interface from at least two routes associated with a logical identifier, the at least two routes communicatively coupling the input/output interface to the target so that the host may access the target utilizing the logical identifier.
It is to be understood that both the forgoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed. The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate an embodiment of the invention and together with the general description, serve to explain the principles of the invention.